home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Collections: MegaDisc
/
MegaDisc 28 (1992-05)(MegaDisc Digital Publishing)(AU)(Disk 2 of 2).zip
/
MegaDisc 28 (1992-05)(MegaDisc Digital Publishing)(AU)(Disk 2 of 2).adf
/
Programming
/
BASIC_TUTORIAL_9
/
ScrollFont.bas
< prev
next >
Wrap
BASIC Source File
|
1992-05-26
|
2KB
|
95 lines
REM $option y+
CALL diskfont.MSB:CALL graphics.MSB
DECLARE FUNCTION OpenDiskFont& LIBRARY
SCREEN 1,640,256,3,2
WINDOW 2,,,,1
COLOR 3,0
a$=" This is Sapphire.Font"
Font "sapphire.font",19,0,0
j=1
start:
LOCATE 3,1
FOR x=1 TO 359
PRINT PTAB(x);a$;
NEXT x
COLOR 2,0
PRINT PTAB(360);a$;
x=0
again:
SCROLL (350,14)-(620,200),0,1
x=x+1
IF x<=56 THEN GOTO again
LOCATE 6,1
COLOR 3,0
FOR x= 360 TO 1 STEP -1
PRINT PTAB(x);a$;
NEXT x
COLOR 2,0
PRINT PTAB(1);a$;
again1:
SCROLL (0,200)-(260,15),0,-1
x=x+1
IF x<=56 THEN GOTO again1
j=j+1
IF j>=2 THEN againfin
COLOR 3,0
GOTO start
againfin:
LOCATE 3,1:COLOR 3,0
PRINT PTAB(1);a$;
PRINT :PRINT :PRINT
Font "topaz.font",8,0,0
COLOR 5,0
INPUT " Now we are back to normal (Press <RETURN>",dum$
LIBRARY CLOSE
WINDOW CLOSE 2
SCREEN CLOSE 1
END
SUB Font(fontName$, height%, style%, prefs%) STATIC
SHARED pFont&
IF pFont&<>0 THEN CALL CloseFont(pFont&)
fontName0$=fontName$+CHR$(0)
textAttr&(0)=SADD(fontName0$)
textAttr&(1)=height%*65536& + style%*256 + prefs%
pFont&=OpenDiskFont&(VARPTR(textAttr&(0)))
IF pFont& <> 0 THEN SetFont WINDOW(8),pFont&
END SUB
SUB diskfont.MSB STATIC
fd$=fd$+"OpenDiskFont" + chr$(0)
fd$=fd$+chr$( 255)+chr$( 226)+chr$( 9)+chr$( 0)
OPEN "RAM:diskfont.bmap" FOR OUTPUT AS 1
PRINT #1,FD$;
CLOSE 1
LIBRARY "RAM:diskfont.library"
END SUB
SUB graphics.MSB STATIC
fd$=fd$+"AskSoftStyle" + chr$(0)
fd$=fd$+chr$( 255)+chr$( 172)+chr$( 10)+chr$( 0)
fd$=fd$+"SetSoftStyle" + chr$(0)
fd$=fd$+chr$( 255)+chr$( 166)+chr$( 10)+chr$( 1)+chr$( 2)+chr$( 0)
fd$=fd$+"OpenFont" + chr$(0)
fd$=fd$+chr$( 255)+chr$( 184)+chr$( 9)+chr$( 0)
fd$=fd$+"SetFont" + chr$(0)
fd$=fd$+chr$( 255)+chr$( 190)+chr$( 10)+chr$( 9)+chr$( 0)
fd$=fd$+"CloseFont" + chr$(0)
fd$=fd$+chr$( 255)+chr$( 178)+chr$( 10)+chr$( 0)
OPEN "RAM:graphics.bmap" FOR OUTPUT AS 1
PRINT #1,FD$;
CLOSE 1
LIBRARY "RAM:graphics.library"
END SUB